// LimitationTimes.h: interface for the CLimitationTimes class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_LIMITATIONTIMES_H__F927B0DA_1836_47A6_A3E6_12B2FDCC3F2F__INCLUDED_)
#define AFX_LIMITATIONTIMES_H__F927B0DA_1836_47A6_A3E6_12B2FDCC3F2F__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "LimitationV.h"

class CLimitationTimes
	: public CLimitationV
{
// Interface
public:
	bool SetLimitedTimes(const UINT& nTimes);
	const UINT GetLeftTimes() const;
	virtual void Remove();
	virtual bool IsPastDue();
	virtual void HandlePassAuthentication();

// Construction/Destruction
public:
	CLimitationTimes(const UINT& nLimitationID);
	virtual ~CLimitationTimes();

// Data
protected:
	UINT m_nTimes;

// Implement
protected:
	virtual void OnNew(CADORecordset* pRS);
	inline virtual void Load();
	virtual void MakeInValid();
private:
	static const CString KLimitationTimes;
	static const CString Times;
	bool SaveTimes();
};

#endif // !defined(AFX_LIMITATIONTIMES_H__F927B0DA_1836_47A6_A3E6_12B2FDCC3F2F__INCLUDED_)
